package projet;

/* une instance pour chaque couple fournisseur/piece */
public class PurchasedPiece extends Piece {
	// attributs
	private String providerName ; 
	private Float price ;
	
	// constructeur
	/**
	 * Constructeur sans arguments pour le XML
	 */
	public PurchasedPiece() {
	}

	/**
	 * Constructeur avec arguments
	 * @param label
	 * @param providerName
	 * @param price
	 */
	public PurchasedPiece(String l, String providerName, Float price) {
		super(l);
		this.providerName = providerName;
		this.price = price;
	}

	
	// methodes
	
	/**
	 * @param providerName the providerName to set
	 */
	public void setProviderName(String providerName) {
		this.providerName = providerName;
	}

	/**
	 * @param price the price to set
	 */
	public void setPrice(Float price) {
		this.price = price;
	}
	
	/**
	 * @return the price
	 */
	public float getPrice() {
		return price ;
	}
	
	/**
	 * @return the providerName
	 */
	public String getProviderName() {
		return providerName ;
	}
	
	/**
	 * @Override Piece.PrintOnPanel()
	*/
	public String PrintOnPanel() {
		return "\t\tPiece Achetee: Libelle: "+label+"\n\t\t\tFournisseur: "+providerName+"\n\t\t\tPrix: "+price+"\n";
	}
	
	/**
	 *@param stbuf la chaine de caractere precedente ou est concatene le texte xml
	 *@return la chaine de caractere resultante
	 */
	public String xml(StringBuffer stbuf){
		stbuf.append(" <PurchasedPiece>\n");
		stbuf.append("  <providerName>"+providerName+"</providerName>\n");
		stbuf.append("  <label>"+label+"</label>\n");
		stbuf.append("  <price>"+price+"</price>\n");
		stbuf.append(" </PurchasedPiece>\n");
		return ""+stbuf;
	}
	
}
